const express = require('express');
const router = express.Router();
const adminAuthController = require('../controllers/adminAuthController');
const { adminAuth } = require('../middleware/adminAuth');
const rateLimit = require('express-rate-limit');

/**
 * 管理员认证路由
 * 基础路径: /api/admin/auth
 */

// 登录接口限流：5分钟内最多5次
const loginLimiter = rateLimit({
  windowMs: 5 * 60 * 1000, // 5分钟
  max: 5, // 最多5次
  message: { success: false, message: '登录尝试次数过多，请5分钟后再试' },
  standardHeaders: true,
  legacyHeaders: false
});

// 管理员登录（无需认证）
router.post('/login', loginLimiter, adminAuthController.login);

// 获取管理员信息（需要认证）
router.get('/info', adminAuth, adminAuthController.getAdminInfo);

// 修改密码（需要认证）
router.post('/change-password', adminAuth, adminAuthController.changePassword);

// 退出登录（需要认证）
router.post('/logout', adminAuth, adminAuthController.logout);

module.exports = router;

